from analysis_engine import SectorAnalyzer
from datetime import datetime
import pandas as pd
import os

if __name__ == "__main__":
    analyzer = SectorAnalyzer()
    
    # 设置分析日期（使用2023年3月20日）
    trade_date = '20230320'
    
    # 执行核心计算
    sector_stats, quantiles = analyzer.calculate_indicators(trade_date)
    current_data = analyzer.get_stock_data(trade_date)
    final_scores = analyzer.calculate_scores(sector_stats, quantiles, current_data)
    
    # 格式化输出
    pd.set_option('display.max_rows', None)
    pd.set_option('display.width', 1000)
    print("\n行业强度分析报告：")
    print(final_scores.sort_values('score', ascending=False).to_markdown())
    
    # 选择需要输出的列
    output_columns = ['sw_industry', 'score', 'density_score', 'consecutive_score', 'historical_score', 'strength_score',
                     'total_stocks', 'limit_up', 'limit_density', 'consecutive_ratio', 'market_relative_strength']
    
    # 导出为CSV文件
    output_filename = f'sector_analysis_{trade_date}.csv'
    analyzer.export_to_csv(final_scores[output_columns].sort_values('score', ascending=False), output_filename)